/*
 * MoveHistory.h
 *
 * Wrapper Class for stack that holds Moves
 */

#ifndef MOVEHISTORY_H_
#define MOVEHISTORY_H_
#include "Move.h"
#include <stack>

class MoveHistory{
private:
	stack<Move> history;		//Data Structure that holds moves
public:
	MoveHistory();				//Constructor
	~MoveHistory();				//Deconstructor
	void addMove(Move turn);	//Adds move to stack
	Move undoMove();			//Removes top move from stack
	bool isEmpty();				//Returns true is history is empty
	void reset();				//Empties the list
};

#endif /* MOVEHISTORY_H_ */
